package br.com.cqipac.service;

import java.util.Date;
import java.util.List;

//import br.com.cqipac.dao.DaoFactory;
//import br.com.cqipac.dao.TipoNaoConformidadeDao;
import br.com.cqipac.dao.DaoFactory;
import br.com.cqipac.dao.RemoteDao;
import br.com.cqipac.to.Funcionario;
import br.com.cqipac.to.Setor;
import br.com.cqipac.to.TipoNaoConformidade;
import br.com.cqipac.util.CQIpacUtil;

public class TipoNaoConformidadeService {

	public void cadastraTipoNaoConformidade(TipoNaoConformidade tipoNaoConformidade,
			Funcionario funcionarioInclusao) throws Exception {

		tipoNaoConformidade.setFuncionario(funcionarioInclusao);
		tipoNaoConformidade.setDtInclusao(new Date(new Date().getTime()));
		RemoteDao setorDao;
		setorDao = DaoFactory.getDao("SetorDao");
		setorDao.persist(tipoNaoConformidade);
	}
	
	
	public void editaTipoNaoConformidade(TipoNaoConformidade tipoNaoConformidade,
			Funcionario funcionarioInclusao) throws Exception {

		tipoNaoConformidade.setFuncionario(funcionarioInclusao);
		tipoNaoConformidade.setDtInclusao(new Date(new Date().getTime()));
		RemoteDao tipoNaoConformidadeDao;
		tipoNaoConformidadeDao = DaoFactory.getDao("TipoNaoConformidadeDao");
		tipoNaoConformidadeDao.merge(tipoNaoConformidade);
	}

//	public void inserirTipoNaoConformidade(
//			TipoNaoConformidade tipoNaoConformidade,
//			Funcionario funcionarioInclusao) throws Exception {
//
//		tipoNaoConformidade.setFuncionario(funcionarioInclusao);
//		tipoNaoConformidade.setDtInclusao(new Date(new Date().getTime()));
//		RemoteDao setorDao;
//		setorDao = DaoFactory.getDao("SetorDao");
//		setorDao.persist(tipoNaoConformidade);
//	}

	public List<TipoNaoConformidade> listarTipoNaoConformidade(
			TipoNaoConformidade tipoNaoConformidade) throws Exception {

		RemoteDao tipoNaoConformidadeDao;
		tipoNaoConformidadeDao = DaoFactory.getDao("TipoNaoConformidadeDao");
		List<TipoNaoConformidade> tipoNaoConformidades = tipoNaoConformidadeDao
				.list(tipoNaoConformidade, 0);
		return tipoNaoConformidades;

	}

	public List<TipoNaoConformidade> listarTipoNaoConformidades()
			throws Exception {

		RemoteDao tipoNaoConformidadeDao;
		tipoNaoConformidadeDao = DaoFactory.getDao("TipoNaoConformidadeDao");
		List<TipoNaoConformidade> tipoNaoConformidades = tipoNaoConformidadeDao
				.list();
		return tipoNaoConformidades;

	}


	public void excluiTipoNaoConformidade(
			TipoNaoConformidade tipoNaoConformidade)  throws Exception {

		RemoteDao tipoNaoConformidadeDao;
		
		tipoNaoConformidadeDao = DaoFactory.getDao("TipoNaoConformidadeDao");
		tipoNaoConformidadeDao.remove(tipoNaoConformidade);
		
	}


	public TipoNaoConformidade buscaTipoNaoConformidade (
			int codTipoNaoConformidade)  throws Exception {

		RemoteDao tipoNaoConformidadeDao;
		
		tipoNaoConformidadeDao = DaoFactory.getDao("TipoNaoConformidadeDao");
		return (TipoNaoConformidade) tipoNaoConformidadeDao.findById(codTipoNaoConformidade);
	}

}
